package com.newtouch.bxzs.policy.model.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 投保成功通知VO
 *
 * <p>
 * <b>History:</b>
 * <table border="1">
 * <tr>
 * <th>Date</th>
 * <th>Operator</th>
 * <th>Memo</th>
 * </tr>
 * <tr>
 * <td>2021/2/5 13:40</td>
 * <td>linhongxi</td>
 * <td>Create</td>
 * </tr>
 * </table>
 *
 * @author linhongxi
 * @version 1.0.0
 * @since 1.0.0
 */
@Data
@ApiModel(value = "InsuranceNoticeVO",description = "投保成功通知接收信息VO")
public class InsuranceNoticeVO implements Serializable {

    private static final long serialVersionUID = 275965704019103994L;
    @ApiModelProperty(value = "投保单号 policyApplicationNumber; ")
    private String policyApplicationNumber;

    @ApiModelProperty(value = "保单号 policyNumber ")
    private String policyNumber;

    @ApiModelProperty(value = "保单状态 policyStatus ")
    private String policyStatus;

    @ApiModelProperty(value = "主险种代码 policyMainInsuranceCode ")
    private String policyMainInsuranceCode;

    @ApiModelProperty(value = "主险种名称 policyMainInsuranceName ")
    private String policyMainInsuranceName;

    @ApiModelProperty(value = "投保人姓名 policyHolderName")
    private String policyHolderName;

    @ApiModelProperty(value = "投保人证件类型 policyHolderCertificateType")
    private String policyHolderCertificateType;

    @ApiModelProperty(value = "投保人证件号码 policyHolderCertificateNumber")
    private String policyHolderCertificateNumber;

    @ApiModelProperty(value = "被保人姓名 insurederName")
    private String insurederName;

    @ApiModelProperty(value = "被保人证件类型 insurederCertificateType")
    private String insurederCertificateType;

    @ApiModelProperty(value = "被保人证件号码 insurederCertificateNumber")
    private String insurederCertificateNumber;

    @ApiModelProperty(value = "投保日期 policyApplicationDate")
    @JsonFormat(pattern="yyyy-MM-dd",timezone = "GMT+8")
    private Date policyApplicationDate;

    @ApiModelProperty(value = "承保日期 policyAcceptInsuranceDate")
    @JsonFormat(pattern="yyyy-MM-dd",timezone = "GMT+8")
    private Date policyAcceptInsuranceDate;

    @ApiModelProperty(value = "生效日期 policyEfficientDate")
    @JsonFormat(pattern="yyyy-MM-dd",timezone = "GMT+8")
    private Date policyEfficientDate;

    @ApiModelProperty(value = "满期日期 policyExpirationDate")
    @JsonFormat(pattern="yyyy-MM-dd",timezone = "GMT+8")
    private Date policyExpirationDate;

    @ApiModelProperty(value = "银行客户经理工号 bankUserJobNumber ")
    private String bankUserJobNumber;

    @ApiModelProperty(value = "银行客户经理姓名 bankUserName ")
    private String bankUserName;

    @ApiModelProperty(value = "银行客户经理证件类型 bankUserCertificateType")
    private String bankUserCertificateType;

    @ApiModelProperty(value = "银行客户经理证件号码 bankUserCertificateNumber")
    private String bankUserCertificateNumber;

    @ApiModelProperty(value = "保险条线工号 insuranceUserJobNumber ")
    private String insuranceUserJobNumber;

    @ApiModelProperty(value = "保险条线姓名 insuranceUserName ")
    private String insuranceUserName;

    @ApiModelProperty(value = "保险条线证件类型 insuranceUserCertificateType")
    private String insuranceUserCertificateType;

    @ApiModelProperty(value = "保险条线证件号码 insuranceUserCertificateNumber")
    private String insuranceUserCertificateNumber;

    @ApiModelProperty(value = "社会信用代码 dataSource")
    private String dateSource;

    @ApiModelProperty(value = "保单类型 policyType")
    private String policyType;

    @ApiModelProperty(value = "投保公司-社会信用代码 unifiedSocialCreditCode")
    private String unifiedSocialCreditCode;

    @ApiModelProperty(value = "投保人数 insuredNumber")
    private String policyApplicationPersonsNumber;

    @ApiModelProperty(value = "投保公司名称 policyApplicationCompanyName")
    private String policyApplicationCompanyName;

    @ApiModelProperty(value = "三方关系ID userCustomerCooperationCompanyUserMapId")
    private String userCustomerCooperationCompanyUserMapId;

    @ApiModelProperty(value = "保单关联id")
    private String policyRelationId;

}
